package com.hj.pet.api;

import com.hj.pet.model.FriendsRel;
import com.hj.pet.model.ReturnT;
import com.hj.pet.model.UserInfo;

import java.util.List;

public interface FriendsRelService {

    int save(FriendsRel friendsRel);

    int updateByUserId(FriendsRel friendsRel);

    List<FriendsRel> findRelsByUser1(String user_1);

    List<FriendsRel> findRelsByUser2(String user_2);

    int delFriendRel(String user_1, String user_2);

    List<FriendsRel> findRels(FriendsRel friendsRel);


    // 申请好友
    // 待处理的关系列表  rels = relations - relationships
    // 处理好友【请求】 - 接受，拒绝  合并
    // 修改好友关系状态【在已有关系的基础上】 -- 删除
    // 展示好友列表 --

    /**
     * 申请好友
     *
     * @return
     */
    ReturnT<?> addFriendRequest(FriendsRel friendsRel);

    /**
     * 待处理的申请关系列表
     *
     * @param user1
     * @return
     */
    List<FriendsRel> getDealingRels(String user1);

    /**
     * 可以根据自己查任意的好友状态
     *
     * @param user1
     * @return
     */
    List<FriendsRel> getDealingRels(String user1, Integer status);

    /**
     * 处理好友关系
     *
     * @param friendsRel
     * @return
     */
    int dealFriendRel(FriendsRel friendsRel);

    /**
     * 获取好友列表
     *
     * @param user1
     * @return
     */
    List<UserInfo> getAllFriends(String user1);

}
